package br.ucb.sirad.datamodel;

import java.util.List;
import java.util.Map;

import javax.faces.bean.ViewScoped;

import org.primefaces.model.LazyDataModel;
import org.primefaces.model.SortOrder;

import br.ucb.sirad.beans.Usuario;
import br.ucb.sirad.dao.UsuarioDAO;

@ViewScoped
@SuppressWarnings("serial")
public class UsuarioDataModel  extends LazyDataModel<Usuario>{

	private String nome = null;
	private Long perfil = null;
	private UsuarioDAO dao = new UsuarioDAO();
		
	public UsuarioDataModel(String nome, Long perfil){
		this.nome = nome;
		this.perfil = perfil;
	}
	
	@Override
	public List<Usuario> load(int inicio, int quantidade, String campoOrdenado,
			SortOrder sentidoOrdenado, Map<String, String> filtros) {
		
		Long perfilInicio = null;
		 Long perfilFim = null;
		
		if(nome == null || nome.isEmpty()){
			nome = "%";
		}
		if(perfil == null || perfil == 0){
			perfilInicio = (long) 1;
			perfilFim = (long) 2;
		}else{
			perfilInicio = perfil;
			perfilFim = perfil;
		}
		
		return dao.consultaUsuarios(nome,perfilInicio,perfilFim, inicio, quantidade);
	}
}
